# -*- coding: utf-8 -*-
# @Time        :2025/3/11 19:51
# @Author      :文刀水寿
# @File        : 30_爬虫_selenium_交互.py
"""
 @Description :
        交互
            点击:click()
            输入:send_keys()
            后退操作:browser.back()
            前进操作:browser.forword()
            模拟JS滚动:
            js='document.documentElement.scrollTop=100000' browser.execute_script(js) 执行js代码
            获取网页代码:page_source
            退出:browser.quit()
            滑到底部：'document.documentElement.scrollTop=100000'
                    js_bottom = 'document.documentElement.scrollTop100000'
                    browser.execute_script(js_bottom)
"""
# 导入selenium模块
from selenium import webdriver

# 导入edge浏览器的service类， 用于指定驱动路径
from selenium.webdriver.edge.service import Service

# 创建浏览器操作对象
driver_ptah = "D:\PythonCharm\PyCharmProject\pythonProject\爬虫\msedgedriver.exe"

# 创建service对象， 指定驱动路径
service = Service(executable_path=driver_ptah)

# 创建edge浏览器实例， 传service对象
browser = webdriver.Edge(service=service)

# 定义目标网页的URL
url = 'https://www.baidu.com'

# 使用浏览器打开指定url
browser.get(url)

import time

time.sleep(2)

# 获取文本框对象
input = browser.find_element("xpath", '//input[@id="kw"]')

# 在文本框中输入周杰伦
input.send_keys('周杰伦')

time.sleep(2)

# 点击百度一下
botton = browser.find_element("xpath", '//input[@id="su"]')

botton.click()

time.sleep(2)

# 滑到底部
js_bottom = 'document.documentElement.scrollTop100000'
browser.execute_script(js_bottom)
time.sleep(2)

# 点击下一页
botton = botton.find_element("xpath", '//a[@class="n"]')
botton.click()

time.sleep(2)

# 返回上一页
browser.back()
time.sleep(3)

# 回到第二页
browser.forward()
time.sleep(2)

# 滑到底部
js_bottom = 'document.documentElement.scrollTop100000'

# 退出
browser.quit()
